#ifndef _TCP_SOCKET_H_
#define _TCP_SOCKET_H_

#include <sys/types.h>
#include <sys/socket.h>
#include <arpa/inet.h>
#include <netdb.h>
#include <netinet/in.h>
#include <unistd.h>

class tcp_socket
{
	public:
		tcp_socket();
		~tcp_socket();

		bool socket(int domain, int type, int protocol);
		bool bind(char *ip, int port);
		bool listen();
		bool accept(struct sockaddr_in *cliaddr);
		bool connect(char *ip, int port);
		int recv(char *buf, int len, int flag);
		int	send(char *buf, int len, int flag);

	private:
		int sockfd;
		int listfd;
		bool isserver;
};

#endif

